home *** CD-ROM | disk | FTP | other *** search
/ Celestin Apprentice 7 / Apprentice-Release7.iso / Source Code / C / Applications / Moscow ML 1.42 / src / compiler / Mixture.sig < prev    next >
Encoding:
Text File  |  1997-08-18  |  2.2 KB  |  74 lines  |  [TEXT/R*ch]

  1. exception Toplevel;
  2. exception EndOfFile;
  3. exception LexicalError of string * int * int;
  4.  
  5. val toplevel : bool ref;
  6.  
  7. val pp_out : ppstream;
  8. val msgCBlock : int -> unit; (* Begins a CONSISTENT block. *)
  9. val msgIBlock : int -> unit; (* Begins an INCONSISTENT block. *)
  10. val msgEBlock : unit -> unit;
  11. val msgBreak : int * int -> unit;
  12. val msgClear : unit -> unit;
  13. val msgFlush : unit -> unit;
  14.  
  15. val msgPrompt : string -> unit;
  16. val msgContPrompt : string -> unit;
  17. val errPrompt : string -> unit;
  18. val msgString : string -> unit;
  19. val msgChar : char -> unit;
  20. val msgInt : int -> unit;
  21. val msgReal : real -> unit;
  22. val msgWord : word -> unit;
  23. val msgEOL : unit -> unit;
  24.  
  25. val path_library : string ref;
  26. val value_polymorphism : bool ref;
  27. val load_path : string list ref;
  28. val file_exists : string -> bool;
  29. val find_in_path : string -> string;
  30. val remove_file : string -> unit;
  31.  
  32. datatype Lab =
  33.     INTlab of int
  34.   | STRINGlab of string
  35. ;
  36.  
  37. type 'a Row = (Lab * 'a) list;
  38.  
  39. val printLab : Lab -> unit;
  40. val isPairRow : 'a Row -> bool;
  41. val isTupleRow : 'a Row -> bool;
  42. val mkPairRow : 'a -> 'a -> 'a Row;
  43. val mkTupleRow : 'a list -> 'a Row;
  44. val lt_lab : Lab -> Lab -> bool;
  45. val insertField : Lab * 'a -> 'a Row -> 'a Row;
  46. val sortRow : 'a Row -> 'a Row;
  47.  
  48. datatype ('a, 'b) Env
  49.   = NILenv
  50.   | BNDenv of 'a * 'b * ('a, 'b) Env
  51.   | TOPenv of ('a, 'b) Hasht.t * ('a, 'b) Env
  52.   | COMPenv of ('a, 'b) Env * ('a, 'b) Env
  53. ;
  54.  
  55. val plusEnv : ('a, 'b) Env -> ('a, 'b) Env -> ('a, 'b) Env;
  56. val lookupEnv : (''a, 'b) Env -> ''a -> 'b;
  57. val bindInEnv : ('a, 'b) Env -> 'a -> 'b -> ('a, 'b) Env;
  58. val bindTopInEnv : ('a, 'b) Env -> ('a, 'b) Hasht.t -> ('a, 'b) Env;
  59. val mkHashEnv : int -> (''a, 'b) Env -> (''a, 'b) Env
  60. val mk1Env : 'a -> 'b -> ('a, 'b) Env;
  61. val mk1TopEnv : ('a, 'b) Hasht.t -> ('a, 'b) Env;
  62. val revEnvAcc : ('a, 'b) Env -> ('a, 'b) Env -> ('a, 'b) Env;
  63. val revEnv : ('a, 'b) Env -> ('a, 'b) Env;
  64. val traverseEnv : (''_a -> 'b -> unit) -> (''_a, 'b) Env -> unit;
  65. val mapEnv : (''_a -> 'b -> 'c) -> (''_a, 'b) Env -> (''_a, 'c) Env;
  66. val foldEnv : (''_a -> 'b -> 'c -> 'c) -> 'c -> (''_a, 'b) Env -> 'c;
  67.  
  68. type SigStamp = string;
  69. val dummySigStamp : SigStamp;
  70. val watchDog : (string, SigStamp) Hasht.t ref;
  71.  
  72. val preloadedUnits : string list ref;
  73. val preopenedPreloadedUnits : string list ref;
  74.